package com.kingmed.kmss.common.utils;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class CommUtils {

    /**
     * 校验手机号
     */
    public boolean checkPhone(String phone) {
        if (StringUtils.isBlank(phone)) {
            return true;
        }
        if (phone.length() != 11) {
            return false;
        }
        String regex = "^[1]([3-9])[0-9]{9}$";
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(phone);
        return m.matches();
    }

    /**
     * 校验邮箱
     */
    public boolean checkEmail(String email) {
        if (StringUtils.isBlank(email)) {
            return true;
        }
        // 判断是否为空邮箱
        int k = 0;
        // 判断是否有仅有一个@且不能在开头或结尾
        if (email.indexOf("@") > 0 && email.indexOf('@') == email.lastIndexOf('@') && email.indexOf('@') < email.length() - 1) {
            k++;
        }
        // 判断"@"之后必须有"."且不能紧跟
        if (email.indexOf('.', email.indexOf('@')) > email.indexOf('@') + 1) {
            k++;
        }
        // 判断"@"之前或之后不能紧跟"."
        if (email.indexOf('.') < email.indexOf('@') - 1 || email.indexOf('.') > email.indexOf('@') + 1) {
            k++;
        }
        // @之前要有6个字符
        if (email.indexOf('@') > 5) {
            k++;
        }
        if (email.endsWith("com") || email.endsWith("org") || email.endsWith("cn") || email.endsWith("net")) {
            k++;
        }
        return k == 5;
    }
}
